AWS Toolkit for Visual Studio がMFAに対応したのでクロスアカウントアクセスで試してみた
いわさです。
AWS Toolkit for Visual Studio が バージョン 1.21.0.0から MFA認証に対応しました。
本日はVisual Studio 2019 で MFAを必要とするスイッチロールを利用してみました。
Visual Studioから以下のアクセスを行います。
https://aws.amazon.com/jp/blogs/security/how-do-i-protect-cross-account-access-using-mfa-2/
AWS Tooklit for Visual Studio とは
Visual Studio の拡張機能で、Visual StudioからAWSリソースの操作やデプロイを可能にするツールです。
Visual StudioをIDEとして使い、インフラがAWSである開発環境では必須と言って良い拡張機能です。
セットアップ
Visual Studioのツールメニューから拡張機能を選択します。
"AWS Toolkit for Visual Studio 2017 and 2019" を選択します。
アカウントAとアカウントBがあり、アカウントBにスイッチ用のロールを作成しMFAを要求させておきます。
%USERPROFILE%.aws
にcredentialsファイルを以下のような内容で用意します。
defaultプロファイルはアカウントAの認証情報です。
[default] aws_access_key_id = XXXXXXXX aws_secret_access_key = hoge/fuga/piyo [iwasa-role] mfa_serial = arn:aws:iam::アカウントA:mfa/iwasa.hoge role_arn = arn:aws:iam::アカウントB:role/iwasa.fuga source_profile = default
使ってみる
Visual Studioのメニューで "表示" -> "AWS Explorer" を選択します。
AWS Explorerウインドウ内でスイッチロール用のプロファイルを選択します。
MFAの認証ダイアログが表示されました。
MFAコードを入力します。
アカウントBのAWSリソースへ無事アクセスすることが出来ました。
その他
今回のバージョンアップで、AWS SSOも AWS Toolkit for Visual Studio で対応されたようなので、近いうちにそちらも記事にしてみたいと思います。